// musicPlayer.js  
export default class MusicPlayer {
	constructor() {
		this.audioContext = uni.createInnerAudioContext(); // 创建音频上下文  
		this.isLooping = false; // 循环播放标志  
	}

	// 设置音频源  
	setSrc(src) {
		this.audioContext.src = src;
	}

	// 开始播放  
	play() {
		this.audioContext.play();
	}

	// 停止播放  
	stop() {
		this.audioContext.stop();
	}

	// 切换循环播放  
	toggleLoop() {
		this.isLooping = !this.isLooping;
		this.audioContext.loop = this.isLooping; // 设置循环播放  
	}

	// 监听播放结束事件  
	onEnded(callback) {
		this.audioContext.onEnded(callback);
	}

	// 监听播放错误事件  
	onError(callback) {
		this.audioContext.onError(callback);
	}

	// 释放音频上下文  
	destroy() {
		this.audioContext.destroy();
	}
}